Hi, I read and listened to dozens of tutorials and read some textbooks. You clearly explained the symbols :- ; and , which nobody else did. Once I saw those definitions, I understood immediately. Fantastic and unbelievable how badly some others try and teach it.
Sir, I can't express how much I love this videos of yours, you know,my professor wants us to simulate this Prolog without teaching us. This helpsne a lot. Thank you very much
Thank you! Our lecturer expect us to make a single file simple prolog program for the end of semester without actually explaining to us the basic and this is really helpful to get me started! Hell, she doesn't even teach us which executable to use in Amzi.
Why the programming languages are still not self-aware in the 21-st century ! That should really trouble you all. The problem with Prolog is that the meaning is assigned by the human . d( [], X, X). d( [X | Y], Z, [X | W]) :- d( Y, Z, W). for Prolog is different than end( [], X, X). end( [X | Y], Z, [X | W]) :- end( Y, Z, W). but both are just the same as append( [], X, X). append( [X | Y], Z, [X | W]) :- append( Y, Z, W). Basically, the meaning remains in the head of the human and Prolog is completely void of capturing the meaning of the predicates, functors, atoms, etc. The same applies to any other programming language I am aware of. THEY ALL FAIL TO CAPTURE MEANING, AWARENESS, CONTEXT, etc. ! Prolog was supposed to be the language of AI but it is still not self-aware.
If I didn't find this, I'd be fucked because my professor sucks. Please continue these tutorials because they are really helpful. I have forwarded these tuts to my friends.
Why the programming languages are still not self-aware in the 21-st century ! That should really trouble you all. The problem with Prolog is that the meaning is assigned by the human . d( [], X, X). d( [X | Y], Z, [X | W]) :- d( Y, Z, W). for Prolog is different than end( [], X, X). end( [X | Y], Z, [X | W]) :- end( Y, Z, W). but both are just the same as append( [], X, X). append( [X | Y], Z, [X | W]) :- append( Y, Z, W). Basically, the meaning remains in the head of the human and Prolog is completely void of capturing the meaning of the predicates, functors, atoms, etc. The same applies to any other programming language I am aware of. THEY ALL FAIL TO CAPTURE MEANING, AWARENESS, CONTEXT, etc. ! Prolog was supposed to be the language of AI but it is still not self-aware.
Dude thanks a lot i'm in the library watching your video and you teach this better than my professor at my college. I did not like this programming language but with your videos I am learning to appreciate Prolog. tomorrow its part 2 of your videos and so on and so on until i finish them all. i did not know of sublime text thanks again
I would recommend using SWISH for the Prolog IDE. It runs swi prolog under the hood and is much easier to use. You can also edit your text in SWISH. Also I recommend notepad ++ as an alternative. Both sublime and notepad++ are great.
Thanks dude! Your video explanation is very good and I understand very clearly. Yours teaching method is better than our professor at my uni!! While I listening your video, I comprehend clearly Facts, rules and queries in SWI.exe
Too bad Josh is friendzoned! XD This is some high quality educative stuff! Subbed! Totally gonna tell my friends about this. Our Lab tutor missed some stuff. Like now i know what :- actually means!
Is there a logic programming language that supports a third truth value 'unknown'? Prolog overloads 'unknown' with 'false'. For example, ~likes(dan, sally) is false while likes(blake, josh) is unknown, but Prolog doesn't differentiate between unknown and false. I guess a user can differentiate between unknown and false. A sentence is unknown if Prolog says the sentence and its negation is false. A sentence is false if Prolog says the sentence is false and its negation is true. But that's cumbersome. Try the following queries: likes(blake, josh). not likes(blake, josh). dating(josh, brittney). not dating(josh, brittney).
Hy, I am obviously the only one with the problem. I understood how it works and the video is great. But I have an error. The code is the same as yours but i keep getting "ERROR: toplevel: undefined procedure: friendship/2 (DWIM could not correct goal). help pls. i want to go on with tutorials! :/
Do I've any mistakes in the code? screen.w3.ua/Apr18/8977561.jpg I've tallied mine code with the tutorial but the result is false. How? Any idea, plz reply.
I have a big question! Your last query is friendship(josh, brittney). it outputs true, no doubts. However, if you hit , it will give you another solution, FALSE. Why is that? What does that mean? I did some google search, and it seems like prolog gives you multiple solutions if there exists more than one solution. To view the second or third solution, one presses . In other words, Josh and Brittney are friends and not friends? What? Please clarify. Need help! Many Thanks!
If you want more solution you just hit " ; " until prolog responds False, which means it can not find more solution to the query. If you are done with the query, say prolog has returned the solution you want, but there are still more to return which are something you don't care, you can always hit " . " to stop the query.
• If it is a nice day and it is summer, then I go to the beach • If it is a nice day and it is winter, then I go to the canal boating resort • If it is not a nice day and it is summer, then I go to work • If it is not a nice day and it is winter, then I go to class • If I go to the beach, then I swim. • If I go to the canal boating resort , then I go boat riding • If I go boat riding or I swim, then I have fun. • If I go to work, then I make money. • If I go to class, then I learn something. How do i write this in prolog? I'm confused.
Anyone want to commment on how likes is the predicate ? New to me somewhat, and I'm sure the author has it down, but I got confused thinking that Bobby might be the predicate there on #3? Could use some help as to why it's likes - vs bobby. In part the other two - the predicate was as the end, any thoughts would be great. Thanks
11111 views! This is a sign! I should finish up this series hehe. I'm really excited about it, we're taking Prolog in college but I wanna spend more time on understanding its fundamentals since I'm used to imperative languages more.
@The Simple Engineer Greetings, easy to understand. I have a question though, because the friendship rule will flag the guys who are dating too, how do you fix that? Thanks.
Yep. You can even make both people variables. likes(dan,sally). likes(sally,dan). dating(X,Y) :- likes(X,Y), likes(Y,X). ---------------------------------------------------- ?- dating(X,Y). X = dan, Y = sally X = sally, Y = dan
hello there, thank you so much for this helpful tutorial i have a homework on prolog that i couldn't solve and i couldn't understand would you please like to help ?
"Thank You", thank you very much. I downloaded Visual Prolog, and wanted to know, if you could recommend a good book for beginners? Let me know. I look forward to hearing from you 😎
yup. brilliant tutorials!. keep em commin` my man, and yup i will share you everywhere :D and think about DONATE button or something somewhere here :) i mean, you need to be motivated. and stuff you are doing is damn cool!
Best Prolog tutorial on RUclips! Period.
Hi, I read and listened to dozens of tutorials and read some textbooks. You clearly explained the symbols :- ; and , which nobody else did. Once I saw those definitions, I understood immediately. Fantastic and unbelievable how badly some others try and teach it.
Sir, I can't express how much I love this videos of yours, you know,my professor wants us to simulate this Prolog without teaching us. This helpsne a lot. Thank you very much
Thank you! Our lecturer expect us to make a single file simple prolog program for the end of semester without actually explaining to us the basic and this is really helpful to get me started! Hell, she doesn't even teach us which executable to use in Amzi.
The friendship rule is more of a friendzone rule.
Why the programming languages are still not self-aware in the 21-st century !
That should really trouble you all.
The problem with Prolog is that the meaning is assigned by the human .
d( [], X, X).
d( [X | Y], Z, [X | W]) :- d( Y, Z, W).
for Prolog is different than
end( [], X, X).
end( [X | Y], Z, [X | W]) :- end( Y, Z, W).
but both are just the same as
append( [], X, X).
append( [X | Y], Z, [X | W]) :- append( Y, Z, W).
Basically, the meaning remains in the head of the human and Prolog is completely void of capturing the meaning of the predicates, functors, atoms, etc.
The same applies to any other programming language I am aware of. THEY ALL FAIL TO CAPTURE MEANING, AWARENESS, CONTEXT, etc. !
Prolog was supposed to be the language of AI but it is still not self-aware.
@@reasonerenlightened2456 good detective work Captain Obvious
Hey very nice video! By the way, I would say that ':-' stands for back-implication not for "if and only if"... A :- B means B->A.
I wasn't expecting that intro, but I love it. As much as I love your videos... and you...
Thanks! Glad to have helped.
If I didn't find this, I'd be fucked because my professor sucks. Please continue these tutorials because they are really helpful. I have forwarded these tuts to my friends.
Cherry Pauper We might have the same professor.
+Kerry Adams Same here
Why the programming languages are still not self-aware in the 21-st century !
That should really trouble you all.
The problem with Prolog is that the meaning is assigned by the human .
d( [], X, X).
d( [X | Y], Z, [X | W]) :- d( Y, Z, W).
for Prolog is different than
end( [], X, X).
end( [X | Y], Z, [X | W]) :- end( Y, Z, W).
but both are just the same as
append( [], X, X).
append( [X | Y], Z, [X | W]) :- append( Y, Z, W).
Basically, the meaning remains in the head of the human and Prolog is completely void of capturing the meaning of the predicates, functors, atoms, etc.
The same applies to any other programming language I am aware of. THEY ALL FAIL TO CAPTURE MEANING, AWARENESS, CONTEXT, etc. !
Prolog was supposed to be the language of AI but it is still not self-aware.
It's 2021 and still very helpful, thanks a lot dude
this video deserves more upvotes
thank you so much...this video made me love to study prolog after this....you explained such a way easy to me understand that..
Dude thanks a lot i'm in the library watching your video and you teach this better than my professor at my college. I did not like this programming language but with your videos I am learning to appreciate Prolog. tomorrow its part 2 of your videos and so on and so on until i finish them all. i did not know of sublime text thanks again
Cool dude, glad I could help you out.
The best tutorial on Prolog i saw, great work!
Best prolog video I've seen
Facts: 2:06 Rules: 4:32 Queries: all throughout
I can relate to Josh.
same ....
relate(Josh, Cesar).
Same bro
Yo jombo you here
I would recommend using SWISH for the Prolog IDE. It runs swi prolog under the hood and is much easier to use. You can also edit your text in SWISH. Also I recommend notepad ++ as an alternative. Both sublime and notepad++ are great.
Awesome video! Clear spoken, to the point, excellent. Getting me through this paradigms class lol
Thanks dude! Your video explanation is very good and I understand very clearly. Yours teaching method is better than our professor at my uni!! While I listening your video, I comprehend clearly Facts, rules and queries in SWI.exe
Song is Holiest by Glass Animals
higly underrated channel!... full support from an indian. subscriber!
very decent and good way of teaching!
Thanks a lot man. Amazing video. Really helpful
9:48 implementation of the "friendzone" in Prolog. I can't even.
Great video and clear explanation !
very very useful . thank you so much . i wish you continue uploading such tutorials
Too bad Josh is friendzoned! XD
This is some high quality educative stuff! Subbed! Totally gonna tell my friends about this. Our Lab tutor missed some stuff. Like now i know what :- actually means!
Major O Yep, I think when they teach it they don't actually understand it themselves. Great tutorial
tomorrow is my final practical and i don't know what is PROLOG but this is great I hope I have time to learn it, Nyc explanation bro.
For some reason, SWI isn't recognizing my document when I try to open up. I tried every variation possible. Basically the step you get into at 9:55
well I was able to get there by pressing the consult tab, nvm!
Did you see the Picat language?
I found it much much simpler then Prolog for the viewpoint of longtime imperative programmer, or beginner
Awesome tutorial mate. :D. Thanks again
Great Work, Sir !!!
DWIM could not correct goal.. how to fix this error?
Many times I faced this problem "Last release gives the question" ?
how to handle it?
awesome and simple to follow !
Very informative. Thank you
It was really helpful. I appreciate!
Is there a logic programming language that supports a third truth value 'unknown'? Prolog overloads 'unknown' with 'false'.
For example, ~likes(dan, sally) is false
while likes(blake, josh) is unknown, but Prolog doesn't differentiate between unknown and false.
I guess a user can differentiate between unknown and false. A sentence is unknown if Prolog says the sentence and its negation is false. A sentence is false if Prolog says the sentence is false and its negation is true. But that's cumbersome.
Try the following queries:
likes(blake, josh).
not likes(blake, josh).
dating(josh, brittney).
not dating(josh, brittney).
When you open your compiler and run the .pl file. There was written 6 clauses. What is clause?
EXCELLENT JOB!
Hy, I am obviously the only one with the problem. I understood how it works and the video is great. But I have an error. The code is the same as yours but i keep getting "ERROR: toplevel: undefined procedure: friendship/2 (DWIM could not correct goal).
help pls. i want to go on with tutorials! :/
Thanks dude this is really helpful!
Why does it return true.( with a . at the end)Sometimes and true (with no .) at the end
wow it was great . i really liked it thank you so much .
how do you write 'not' in prolog? like X is not married to Y or something like that and there's already a fact for married.
Do I've any mistakes in the code? screen.w3.ua/Apr18/8977561.jpg
I've tallied mine code with the tutorial but the result is false. How? Any idea, plz reply.
What are the applications of this prolog language ???
WOW - So easy to understand, thank you so much!
I have a big question! Your last query is friendship(josh, brittney). it outputs true, no doubts. However, if you hit , it will give you another solution, FALSE. Why is that? What does that mean?
I did some google search, and it seems like prolog gives you multiple solutions if there exists more than one solution. To view the second or third solution, one presses . In other words, Josh and Brittney are friends and not friends? What? Please clarify. Need help!
Many Thanks!
I have the same question.
If you want more solution you just hit " ; " until prolog responds False, which means it can not find more solution to the query. If you are done with the query, say prolog has returned the solution you want, but there are still more to return which are something you don't care, you can always hit " . " to stop the query.
Jason William thanks for the dot notice man.
Btw in recursion we append ",!." w/o quotes to prevent this unwanted "false" behavior.
Why not just use the editor in SWI Prolog?
What’s the song played in the intro?
• If it is a nice day and it is summer, then I go to the beach
• If it is a nice day and it is winter, then I go to the canal boating resort
• If it is not a nice day and it is summer, then I go to work
• If it is not a nice day and it is winter, then I go to class
• If I go to the beach, then I swim.
• If I go to the canal boating resort , then I go boat riding
• If I go boat riding or I swim, then I have fun.
• If I go to work, then I make money.
• If I go to class, then I learn something.
How do i write this in prolog? I'm confused.
Anyone want to commment on how likes is the predicate ? New to me somewhat, and I'm sure the author has it down, but I got confused thinking that Bobby might be the predicate there on #3?
Could use some help as to why it's likes - vs bobby.
In part the other two - the predicate was as the end, any thoughts would be great. Thanks
i liked ur video and way of explanation.. but plz can tell me that prolog can help me in making a self learning chatbot?? .. waiting for ur ans
What music played in the beginning?
Does turbo prolog and prolog which you used are the same for mac?
Could you plzz put up something regarding water jug problem using prolog,it would really be very helpful!!
11111 views!
This is a sign! I should finish up this series hehe.
I'm really excited about it, we're taking Prolog in college but I wanna spend more time on understanding its fundamentals since I'm used to imperative languages more.
wtf, this is crazy :D
One day, I'll learn functional progrogramming.
@The Simple Engineer
Greetings, easy to understand.
I have a question though, because the friendship rule will flag the guys who are dating too, how do you fix that?
Thanks.
Great tutorial...thanks..
Thanks, this helped a lot
bro, you saved me thank you !!
thank u soo much...very well explained
my midterm is on monday i have no idea what should i do :(
this man for the tutorial
Would it be possible to run ?- dating(X, sally). Would it return X = dan ?
Yep. You can even make both people variables.
likes(dan,sally).
likes(sally,dan).
dating(X,Y) :- likes(X,Y), likes(Y,X).
----------------------------------------------------
?- dating(X,Y).
X = dan, Y = sally
X = sally, Y = dan
Thank you very much, guy!
Great explanation. and i have one question. if addProduct/0 is a rule, what does that mean by '/0' ? if you have a tutorial please suggest me.
what is pl(user)?
Really helpful. Thanks
why u have mac os??
Good Job!
Thanks very much.
TY for the Videos :)
Thanks for help, bro)
Great video, congrats!! As looks like you're still recording it, do you know a good site or RUclips channel to learn more about Prolog?
Thank you so much sir
SWI is NOT an IDE. It is just the interpreter with an REPL.
what is the song for intro?
King WAD Holiest - Glass Animals
Thank you!
dating (X,Y) :- likes(X,Y),likes(Y,X),YX.
shouldn't we use (not equal) since we are using the same relation twice ?
RGawishable Not equal to is denoted by X/=Y is guess :!
Johny has feelings too!
Thank you so much
Np
awesome!
What is the name of the song?
Holiest- Glass Animal
thanks a lot Sir awesome
hello there, thank you so much for this helpful tutorial
i have a homework on prolog that i couldn't solve and i couldn't understand
would you please like to help ?
"Thank You", thank you very much. I downloaded Visual Prolog, and wanted to know, if you could recommend a good book for beginners?
Let me know. I look forward to hearing from you 😎
this is not a database, it is called KB (knowledge base).
awsome tuto rlly dude thnx loooooot
yup. brilliant tutorials!. keep em commin` my man, and yup i will share you everywhere :D and think about DONATE button or something somewhere here :) i mean, you need to be motivated. and stuff you are doing is damn cool!
Thanks for your video (y)
thank you
Josh got friend zoned. Sucks for him.
compile doesn't work
Bucky Roberts....!! :D
nice thank you
Song? I think we like the same music haha.
Sometimes in the middle of the night it burns when I have to get up and pee