Isabelle对二元谓词所代表的关系有什么支持?

时间:2018-04-25 21:31:34

标签: isabelle

在Isabelle形式化中,我用二元谓词来表示关系。我想让运算符使用这种表示来执行典型的关系运算,例如组合和反演。

文档“Main in the Main”仅提到这些运算符用于表示成对的表示。 Relation理论在开头说,“关系 - 作为对的集合,和二元谓词”。但是,我对这个理论中的二元谓词表示找不到太多支持。我发现的只有几个带有神秘pred_set_conv属性的外阴。

对二元谓词所代表的关系有广泛的支持吗?特别是,是否定义了常见关系操作的运算符?这些事情记录在哪里?

1 个答案:

答案 0 :(得分:2)

对关系的支持作为对的集合比二元谓词稍微好一些,但是有很多可用的。但是,许多关系操作是对函数和谓词进行更一般操作的实例,或者它们确实是使用pred_set_conv获得的。因此,他们可能很难找到。使用find_theorems命令或面板查找引理。以下是常规操作的简要概述:

  • 作文:relcompp(中缀OO
  • 反向:conversep(符号_\<inverse>\<inverse>
  • (Reflexive)传递闭包:tranclprtranclp
  • 交叉点:inf
  • 联盟:sup
  • 包含:op <=(我发现lemmas predicate2Ipredicate2D特别有用)
  • 仅限于域的函数图:BNF_Def.Grp
  • 两个函数下的反向图像:BNF_Def.vimage2p
  • 有充分根据和可访问性:wfPaccp