Live data from Hacker News

Logic Programming (Prolog, ASP, etc) and GRAKN.AI (a distributed knowledge base)

blog.grakn.ai

11–13 of 13 posts

Re: Logic Programming (Prolog, ASP, etc) and GRAKN.AI (a distributed knowledge base)

#11
post #10

My wife is Indonesian and has only one name, her give name or first name. No surname. How do you address that in the example? A modifier of sorts?

Good point. The declaration is just an extra constraint. It specifies what you can insert not what you have to insert. So in your example you can just insert some of the resources.

Re: Logic Programming (Prolog, ASP, etc) and GRAKN.AI (a distributed knowledge base)

#12
post #2

This is why we can't have nice things: “Find all the people who are named ‘Titus’” In Graql: match $x isa person, has firstname $y; $y val is “Titus”; In ASP: match(Person) :- isa(Person, person), has(Person, firstname, "Titus"). #show match/1. Why can't it simply be "FIND people NAME 'Titus' " ?

I am neither Byrd nor Friedman but I will try my best. The short answer is that it doesn't compose very well, especially when doing relational programming. Let's say that `people` is a record of some sort, and not a relation. That is, when we extract people, we get records of data which we can manipulate, and not a set of functions which let us relate the records to each other. Now, imagine a logical query which has…

Great point about compositionality, thank you!

Re: Logic Programming (Prolog, ASP, etc) and GRAKN.AI (a distributed knowledge base)

#13
post #10

My wife is Indonesian and has only one name, her give name or first name. No surname. How do you address that in the example? A modifier of sorts?

Good point. The declaration is just an extra constraint. It specifies what you can insert not what you have to insert. So in your example you can just insert some of the resources.

Thanks. I didn't realize it wasn't strict about empty fields. More like a form with lots of fields.
Post reply on HN