Below is an excerpt from the Logicmoo / FRDCSA Discord. I think the “cracking an egg” commonsense reasoning problem is an excellent example of showing how pure Prolog is perfectly fine for solving answer oriented problems and constructing a complex world. If it can capture the subtleties of this problem, surely encoding law is even easier due to law’s rule-based nature.
So, I was doing the egg cracking problem last night for a bit, then went to bed and read some of the papers.
- [9:15 AM]
The papers basically do it all the same way, just describing the world and creating relations via rules
- [9:15 AM]
I would not have gone as far as the papers for sure. It looks like it took them awhile to do.
- [9:16 AM]
Regardless it looks like using just pure Prolog for the problem is totally suitable.
- [9:16 AM]
If not a perfect usecase
- [9:16 AM]
I learned some interesting things from the papers for sure, like what is a “useful formalization” (edited)
- [9:17 AM]
I think this is something I’ve been missing from my own formalizations.
- [9:17 AM]
Sure I prove something for my particular problem. IMO this is still useful, but it could be much more useful if they were a bit more generalized.
- [9:22 AM]
- [9:22 AM]
Read section 2
- [9:23 AM]
Basically a good formalization is: general, terms irreducible, and “variant tolerant”