Logic 孤立存在子句的skolemisation是如何工作的?

Logic 孤立存在子句的skolemisation是如何工作的?,logic,satisfiability,conjunctive-normal-form,Logic,Satisfiability,Conjunctive Normal Form,如果我有这样一个公式: FAx FAy (Ez(!A(x,z) v !A(y,z)) v B(x,y)) (FA=全部/E=存在) skolemisation规则规定: 如果E在FA之外,则替换为常数或 如果E在FA内部,则替换为一个新函数,该函数包含FA外部的所有变量作为参数 那么在这种情况下我该怎么办?我可以删除Exists量词还是用常量替换它 谢谢 首先使用标准符号书写: ∀x∀y(∃z(!A(x,z)∨!A(y,z))∨B(x,y)) 现在,应用你的第二个skolemisation规

如果我有这样一个公式:

FAx FAy (Ez(!A(x,z) v !A(y,z)) v B(x,y))
(FA=全部/E=存在)

skolemisation规则规定:

  • 如果E在FA之外,则替换为常数或
  • 如果E在FA内部,则替换为一个新函数,该函数包含FA外部的所有变量作为参数
  • 那么在这种情况下我该怎么办?我可以删除Exists量词还是用常量替换它


    谢谢

    首先使用标准符号书写:

    ∀x∀y(∃z(!A(x,z)∨!A(y,z))∨B(x,y))
    
    现在,应用你的第二个skolemisation规则:

    ∀x∀y((!A(x,f(x,y))∨!A(y,f(x,y)))∨B(x,y))
    
    所以我换了∃z,该函数包含来自外部的所有变量

    现在,这仍然不是Skolem范式,因为它不是共轭prenex范式:公式仍然使用大量析取(∨). 移除这些由您决定