是否有正式系统可以让你做出类似人类的高阶陈述?
Are there formal systems that allow you to make human-like higher-order statements?
对于人类来说,进行高阶陈述是很自然的。例如,您可以声明以下内容(使用伪 Prolog
语法):
苏格拉底很聪明:
smart(socrates).
约翰是个男人:
man(john).
苏格拉底相信所有人都会死:
believes(socrates, (mortal(X) :- man(X))).
如果有人聪明并且相信某事,那一定是真的:
Y :- smart(X), believes(X, Y).
我检查了几个 Prolog
的“高阶”扩展,但都不能接受像最后两个示例那样的语句类型。
是否有正式的系统可以让你做出像人类一样的高阶陈述,比如这些?
这叫做modal logic, and is theorized with Kripke semantics. Here are some libraries in python。
对于人类来说,进行高阶陈述是很自然的。例如,您可以声明以下内容(使用伪 Prolog
语法):
苏格拉底很聪明:
smart(socrates).
约翰是个男人:
man(john).
苏格拉底相信所有人都会死:
believes(socrates, (mortal(X) :- man(X))).
如果有人聪明并且相信某事,那一定是真的:
Y :- smart(X), believes(X, Y).
我检查了几个 Prolog
的“高阶”扩展,但都不能接受像最后两个示例那样的语句类型。
是否有正式的系统可以让你做出像人类一样的高阶陈述,比如这些?
这叫做modal logic, and is theorized with Kripke semantics. Here are some libraries in python。