首页 > 逻辑, 语义网 > 为什么要用模型论语义

为什么要用模型论语义

流水帐,被误导请海涵。

语义,就是关系。从概念到实物(苏格拉底是人),这是外延的关系。从概念到概念(人都是要死的),这是内涵的关系。

从内涵到内涵,比如说可以用推理规则来建立关系。比如

A ^ B -> A

也可以用模型论来建立关系,比如

m(A) ≤ m(A^B), 其中m代表表达式的模型, ≤ 是集合包含。

很多域态逻辑(context logic),用推理规则来表达语义,比如ICL。我认为,这个很有局限。原因如下

  • 啰嗦。其实许多规则本来就是一阶逻辑的规则,比如ist(c,A ^ B )->ist(c, A)
  • 不能支持复杂的域,只支持有名的域(named context),  比如表达不了 ist (c1^c2, A)->ist(c1, A)
  • 不能支持域态推理和非域态推理的混合,比如ist(F(x), c1)) ^ D(c1,c2) ->ist(G(x), c2) 。

除非引用非常多的规则。从信息论的角度,模型论定义本身的熵,才是一个逻辑系统的复杂性;规则(如果是sound的),只是一个近似;一个正确而完备的规则系统,才是模型论的完全语法表达。

所以在这新文章中,我试图引用新的模型论语义。不过我可能在重新发明轮子,看审稿人怎么说吧。

再扯远一点。

对一个模型论语义,推理规则集往往只是一个近似。比如OWL 2 RDF语义,并没有一个完备的推理规则集。许多人以为OWL 2 RL的官方文档给出的推理规则就是完备的,错(比如一些复杂的triple pattern,模型论语义下可以推理出,规则推理不出)。认为OWL有推理闭包的(deductive closure),错。所以从表达力上讲,模型论语义胜出。

从工程角度,大多数程序员不能理解模型论语义,而推理规则很好懂。用Jena推理规则的,不一定看过OWL的DL语义。

写理论文章,还是要尽可能精确,模型论语义是必要的。

Advertisements
分类:逻辑, 语义网

发表评论

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / 更改 )

Twitter picture

You are commenting using your Twitter account. Log Out / 更改 )

Facebook photo

You are commenting using your Facebook account. Log Out / 更改 )

Google+ photo

You are commenting using your Google+ account. Log Out / 更改 )

Connecting to %s

%d 博主赞过: